package com.molichuxing.services.property;

/**
 * 发票状态 枚举
 *
 * @author zhaopenghui
 * @date 2019年9月24日
 */
public enum InvoiceStatusEnum {
    /**
     * 未申请
     */
    NOT_APPLY(1, "未申请"),
    /**
     * 已申请
     */
    HAVE_APPLY(2, "已申请"),
    /**
     * 已过期
     */
    HAVE_EXPIRED(3, "已过期");

    int value;
    String name;

    InvoiceStatusEnum(int value, String name) {
        this.value = value;
        this.name = name;
    }

    public int getValue() {
        return value;
    }

    public String getName() {
        return name;
    }


    /**
     * 通过value获取枚举的name
     *
     * @param value
     * @return
     */
    public static String getName(int value) {
        InvoiceStatusEnum enumerate = getEnum(value);
        return enumerate == null ? null : enumerate.getName();
    }

    /**
     * 通过value获取枚举
     *
     * @param value
     * @return
     */
    public static InvoiceStatusEnum getEnum(int value) {
        for (InvoiceStatusEnum enumerate : InvoiceStatusEnum.values()) {
            if (enumerate.getValue() == value) {
                return enumerate;
            }
        }
        return null;
    }

}
